package com.ccys.db.vo.member;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;

@Data
@ApiModel("ChildVO")
@EqualsAndHashCode(callSuper = false)
public class ChildVO implements Serializable {

        /**
         * 年龄
         */
        @JsonProperty("age")
        private String age;

        /**
         * 过敏反应
         */
        @JsonProperty("allergies")
        private List<AllergyVO> allergies;

        /**
         * 身份证反面照片
         */
        @JsonProperty("back_identification_card_photo")
        private String backIdentificationCardPhoto;

        /**
         * 通用卡背面照片
         */
        @JsonProperty("back_of_general_card_photo")
        private String backOfGeneralCardPhoto;

        /**
         * 出生证明照片  TODO 表没有该字段
         */
        @JsonProperty("birth_certificate_photo")
        private String birthCertificatePhoto;

        /**
         * 孩子照片
         */
        @JsonProperty("child_photo")
        private String childPhoto;

        /**
         * 居住国家
         */
        @JsonProperty("country_of_residence")
        private int countryOfResidence;

        /**
         * 出生日期
         */
        @JsonProperty("date_of_birth")
        private String dateOfBirth;

        /**
         * 紧急联系电话国家ID
         */
        @JsonProperty("emergency_phone_country_id")
        private int emergencyPhoneCountryId;

        /**
         * 名字
         */
        @JsonProperty("first_name")
        private String firstName;

        /**
         * 已满21岁的孩子 TODO 表没有该字段
         */
        @JsonProperty("for_child_that_turned_21")
        private boolean forChildThatTurned21;

        /**
         * 身份证正面照片
         */
        @JsonProperty("front_identification_card_photo")
        private String frontIdentificationCardPhoto;

        /**
         * 通用卡正面照片
         */
        @JsonProperty("front_of_general_card_photo")
        private String frontOfGeneralCardPhoto;

        /**
         * 是否患有葡萄糖-6-磷酸脱氢酶缺乏症
         */
        @JsonProperty("g6pd")
        private boolean g6pd;

        /**
         * 性别
         */
        @JsonProperty("gender")
        private String gender;

        /**
         * 成员ID
         */
        @JsonProperty("id")
        private String id;

        /**
         * 个人咨询费用 TODO  表没有该字段
         */
        @JsonProperty("individual_consult_fee")
        private float individualConsultFee;

        /**
         * 是否访问ThinkWell
         */
        @JsonProperty("is_access_thinkwell")
        private boolean isAccessThinkwell;

        /**
         * 是否已激活PIN码
         */
        @JsonProperty("is_activated_pincode")
        private boolean isActivatedPincode;

        /**
         * 登录会话是否过期
         */
        @JsonProperty("login_session_expired")
        private boolean loginSessionExpired;

        /**
         * 保持登录状态
         */
        @JsonProperty("stay_logged_in")
        private boolean stayLoggedIn;

        /**
         * 姓氏
         */
        @JsonProperty("last_name")
        private String lastName;

        /**
         * 纬度
         */
        @JsonProperty("latitude")
        private String latitude;

        /**
         * 经度
         */
        @JsonProperty("longitude")
        private String longitude;

        /**
         * 药物反应  新需求废弃了
         */
        @JsonProperty("medication_reactions")
        private MemberInfoDetailVO.MedicationReaction[] medicationReactions;

        /**
         * 首次登录标识  有使用???
         */
        @JsonProperty("mem_first_login")
        private boolean memFirstLogin;

        /**
         * 成员类型ID TODO  表没有对应字段
         */
        @JsonProperty("Mem_Type_ID")
        private int memTypeId;

        /**
         * 成员更新时间
         */
        @JsonProperty("Mem_update_on")
        private String memUpdateOn;

        /**
         * 是否订阅通讯
         */
        @JsonProperty("news_letter")
        private boolean newsLetter;

        /**
         * 身份证号码/外国人居留证号码
         */
        @JsonProperty("nric_fin")
        private String nricFin;

        /**
         * 护照照片
         */
        @JsonProperty("passport_photo")
        private String passportPhoto;

        /**
         * 电话国家ID
         */
        @JsonProperty("phone_country_id")
        private int phoneCountryId;

        /**
         * 是否怀孕
         */
        @JsonProperty("pregnant")
        private boolean pregnant;

        /**
         * 个人资料照片  //TODO 表没有该字段
         */
        @JsonProperty("profile_photo")
        private String profilePhoto;

        /**
         * 再次购买数量 ？？？？
         */
        @JsonProperty("rebuy_count")
        private int rebuyCount;

        /**
         * 刷新令牌 ？？？？
         */
        @JsonProperty("refresh_token")
        private String refreshToken;

        /**
         * 注册日期
         */
        @JsonProperty("reg_date")
        private String regDate;

        /**
         * 关系
         */
        @JsonProperty("relationship")
        private String relationship;

        /**
         * 请求激活账户
         */
        @JsonProperty("request_activate_account")
        private boolean requestActivateAccount;

        /**
         * 请求更新联系信息
         */
        @JsonProperty("request_update_contact_info")
        private boolean requestUpdateContactInfo;

        /**
         * 共享的孩子数量  ？？？
         */
        @JsonProperty("shared_child")
        private int sharedChild;

        /**
         * 类型ID TODO 表中无对应字段
         */
        @JsonProperty("type_id")
        private String typeId;
}